home *** CD-ROM | disk | FTP | other *** search
/ Aminet 51 / Aminet 51 (2002)(GTI - Schatztruhe)[!][Oct 2002].iso / Aminet / util / arc / xadmasterdev.lha / xad / Include / C / inline / xadmaster.h < prev   
Encoding:
C/C++ Source or Header  |  2002-08-20  |  7.0 KB  |  198 lines

  1. #ifndef _INLINE_XADMASTER_H
  2. #define _INLINE_XADMASTER_H
  3.  
  4. #ifndef __INLINE_MACROS_H
  5. #include <inline/macros.h>
  6. #endif
  7.  
  8. #ifndef XADMASTER_BASE_NAME
  9. #define XADMASTER_BASE_NAME xadMasterBase
  10. #endif
  11.  
  12. #define xadAllocObjectA(type, tags) \
  13.     LP2(0x1e, APTR, xadAllocObjectA, LONG, type, d0, const struct TagItem *, tags, a0, \
  14.     , XADMASTER_BASE_NAME)
  15.  
  16. #ifndef NO_INLINE_STDARG
  17. #define xadAllocObject(type, tags...) \
  18.     ({ULONG _tags[] = {tags}; xadAllocObjectA((type), (const struct TagItem *) _tags);})
  19. #endif
  20.  
  21. #define xadFreeObjectA(object, tags) \
  22.     LP2NR(0x24, xadFreeObjectA, APTR, object, a0, const struct TagItem *, tags, a1, \
  23.     , XADMASTER_BASE_NAME)
  24.  
  25. #ifndef NO_INLINE_STDARG
  26. #define xadFreeObject(object, tags...) \
  27.     ({ULONG _tags[] = {tags}; xadFreeObjectA((object), (const struct TagItem *) _tags);})
  28. #endif
  29.  
  30. #define xadRecogFileA(size, memory, tags) \
  31.     LP3(0x2a, struct xadClient *, xadRecogFileA, ULONG, size, d0, APTR, memory, a0, const struct TagItem *, tags, a1, \
  32.     , XADMASTER_BASE_NAME)
  33.  
  34. #ifndef NO_INLINE_STDARG
  35. #define xadRecogFile(size, memory, tags...) \
  36.     ({ULONG _tags[] = {tags}; xadRecogFileA((size), (memory), (const struct TagItem *) _tags);})
  37. #endif
  38.  
  39. #define xadGetInfoA(ai, tags) \
  40.     LP2(0x30, LONG, xadGetInfoA, struct xadArchiveInfo *, ai, a0, const struct TagItem *, tags, a1, \
  41.     , XADMASTER_BASE_NAME)
  42.  
  43. #ifndef NO_INLINE_STDARG
  44. #define xadGetInfo(ai, tags...) \
  45.     ({ULONG _tags[] = {tags}; xadGetInfoA((ai), (const struct TagItem *) _tags);})
  46. #endif
  47.  
  48. #define xadFreeInfo(ai) \
  49.     LP1NR(0x36, xadFreeInfo, struct xadArchiveInfo *, ai, a0, \
  50.     , XADMASTER_BASE_NAME)
  51.  
  52. #define xadFileUnArcA(ai, tags) \
  53.     LP2(0x3c, LONG, xadFileUnArcA, struct xadArchiveInfo *, ai, a0, const struct TagItem *, tags, a1, \
  54.     , XADMASTER_BASE_NAME)
  55.  
  56. #ifndef NO_INLINE_STDARG
  57. #define xadFileUnArc(ai, tags...) \
  58.     ({ULONG _tags[] = {tags}; xadFileUnArcA((ai), (const struct TagItem *) _tags);})
  59. #endif
  60.  
  61. #define xadDiskUnArcA(ai, tags) \
  62.     LP2(0x42, LONG, xadDiskUnArcA, struct xadArchiveInfo *, ai, a0, const struct TagItem *, tags, a1, \
  63.     , XADMASTER_BASE_NAME)
  64.  
  65. #ifndef NO_INLINE_STDARG
  66. #define xadDiskUnArc(ai, tags...) \
  67.     ({ULONG _tags[] = {tags}; xadDiskUnArcA((ai), (const struct TagItem *) _tags);})
  68. #endif
  69.  
  70. #define xadGetErrorText(errnum) \
  71.     LP1(0x48, STRPTR, xadGetErrorText, ULONG, errnum, d0, \
  72.     , XADMASTER_BASE_NAME)
  73.  
  74. #define xadGetClientInfo() \
  75.     LP0(0x4e, struct xadClient *, xadGetClientInfo, \
  76.     , XADMASTER_BASE_NAME)
  77.  
  78. #define xadHookAccess(command, data, buffer, ai) \
  79.     LP4(0x54, LONG, xadHookAccess, ULONG, command, d0, LONG, data, d1, APTR, buffer, a0, struct xadArchiveInfo *, ai, a1, \
  80.     , XADMASTER_BASE_NAME)
  81.  
  82. #define xadConvertDatesA(tags) \
  83.     LP1(0x5a, LONG, xadConvertDatesA, const struct TagItem *, tags, a0, \
  84.     , XADMASTER_BASE_NAME)
  85.  
  86. #ifndef NO_INLINE_STDARG
  87. #define xadConvertDates(tags...) \
  88.     ({ULONG _tags[] = {tags}; xadConvertDatesA((const struct TagItem *) _tags);})
  89. #endif
  90.  
  91. #define xadCalcCRC16(id, init, size, buffer) \
  92.     LP4(0x60, UWORD, xadCalcCRC16, ULONG, id, d0, ULONG, init, d1, ULONG, size, d2, STRPTR, buffer, a0, \
  93.     , XADMASTER_BASE_NAME)
  94.  
  95. #define xadCalcCRC32(id, init, size, buffer) \
  96.     LP4(0x66, ULONG, xadCalcCRC32, ULONG, id, d0, ULONG, init, d1, ULONG, size, d2, STRPTR, buffer, a0, \
  97.     , XADMASTER_BASE_NAME)
  98.  
  99. #define xadAllocVec(size, flags) \
  100.     LP2(0x6c, APTR, xadAllocVec, ULONG, size, d0, ULONG, flags, d1, \
  101.     , XADMASTER_BASE_NAME)
  102.  
  103. #define xadCopyMem(src, dest, size) \
  104.     LP3NR(0x72, xadCopyMem, APTR, src, a0, APTR, dest, a1, ULONG, size, d0, \
  105.     , XADMASTER_BASE_NAME)
  106.  
  107. #define xadHookTagAccessA(command, data, buffer, ai, tags) \
  108.     LP5(0x78, LONG, xadHookTagAccessA, ULONG, command, d0, LONG, data, d1, APTR, buffer, a0, struct xadArchiveInfo *, ai, a1, const struct TagItem *, tags, a2, \
  109.     , XADMASTER_BASE_NAME)
  110.  
  111. #ifndef NO_INLINE_STDARG
  112. #define xadHookTagAccess(command, data, buffer, ai, tags...) \
  113.     ({ULONG _tags[] = {tags}; xadHookTagAccessA((command), (data), (buffer), (ai), (const struct TagItem *) _tags);})
  114. #endif
  115.  
  116. #define xadConvertProtectionA(tags) \
  117.     LP1(0x7e, LONG, xadConvertProtectionA, const struct TagItem *, tags, a0, \
  118.     , XADMASTER_BASE_NAME)
  119.  
  120. #ifndef NO_INLINE_STDARG
  121. #define xadConvertProtection(tags...) \
  122.     ({ULONG _tags[] = {tags}; xadConvertProtectionA((const struct TagItem *) _tags);})
  123. #endif
  124.  
  125. #define xadGetDiskInfoA(ai, tags) \
  126.     LP2(0x84, LONG, xadGetDiskInfoA, struct xadArchiveInfo *, ai, a0, const struct TagItem *, tags, a1, \
  127.     , XADMASTER_BASE_NAME)
  128.  
  129. #ifndef NO_INLINE_STDARG
  130. #define xadGetDiskInfo(ai, tags...) \
  131.     ({ULONG _tags[] = {tags}; xadGetDiskInfoA((ai), (const struct TagItem *) _tags);})
  132. #endif
  133.  
  134. #define xadDiskFileUnArcA(ai, tags) \
  135.     LP2(0x8a, LONG, xadDiskFileUnArcA, struct xadArchiveInfo *, ai, a0, const struct TagItem *, tags, a1, \
  136.     , XADMASTER_BASE_NAME)
  137.  
  138. #ifndef NO_INLINE_STDARG
  139. #define xadDiskFileUnArc(ai, tags...) \
  140.     ({ULONG _tags[] = {tags}; xadDiskFileUnArcA((ai), (const struct TagItem *) _tags);})
  141. #endif
  142.  
  143. #define xadGetHookAccessA(ai, tags) \
  144.     LP2(0x90, LONG, xadGetHookAccessA, struct xadArchiveInfo *, ai, a0, const struct TagItem *, tags, a1, \
  145.     , XADMASTER_BASE_NAME)
  146.  
  147. #ifndef NO_INLINE_STDARG
  148. #define xadGetHookAccess(ai, tags...) \
  149.     ({ULONG _tags[] = {tags}; xadGetHookAccessA((ai), (const struct TagItem *) _tags);})
  150. #endif
  151.  
  152. #define xadFreeHookAccessA(ai, tags) \
  153.     LP2(0x96, LONG, xadFreeHookAccessA, struct xadArchiveInfo *, ai, a0, const struct TagItem *, tags, a1, \
  154.     , XADMASTER_BASE_NAME)
  155.  
  156. #ifndef NO_INLINE_STDARG
  157. #define xadFreeHookAccess(ai, tags...) \
  158.     ({ULONG _tags[] = {tags}; xadFreeHookAccessA((ai), (const struct TagItem *) _tags);})
  159. #endif
  160.  
  161. #define xadAddFileEntryA(fi, ai, tags) \
  162.     LP3(0x9c, LONG, xadAddFileEntryA, struct xadFileInfo *, fi, a0, struct xadArchiveInfo *, ai, a1, const struct TagItem *, tags, a2, \
  163.     , XADMASTER_BASE_NAME)
  164.  
  165. #ifndef NO_INLINE_STDARG
  166. #define xadAddFileEntry(fi, ai, tags...) \
  167.     ({ULONG _tags[] = {tags}; xadAddFileEntryA((fi), (ai), (const struct TagItem *) _tags);})
  168. #endif
  169.  
  170. #define xadAddDiskEntryA(di, ai, tags) \
  171.     LP3(0xa2, LONG, xadAddDiskEntryA, struct xadDiskInfo *, di, a0, struct xadArchiveInfo *, ai, a1, const struct TagItem *, tags, a2, \
  172.     , XADMASTER_BASE_NAME)
  173.  
  174. #ifndef NO_INLINE_STDARG
  175. #define xadAddDiskEntry(di, ai, tags...) \
  176.     ({ULONG _tags[] = {tags}; xadAddDiskEntryA((di), (ai), (const struct TagItem *) _tags);})
  177. #endif
  178.  
  179. #define xadGetFilenameA(buffersize, buffer, path, name, tags) \
  180.     LP5(0xa8, LONG, xadGetFilenameA, ULONG, buffersize, d0, STRPTR, buffer, a0, STRPTR, path, a1, STRPTR, name, a2, const struct TagItem *, tags, a3, \
  181.     , XADMASTER_BASE_NAME)
  182.  
  183. #ifndef NO_INLINE_STDARG
  184. #define xadGetFilename(buffersize, buffer, path, name, tags...) \
  185.     ({ULONG _tags[] = {tags}; xadGetFilenameA((buffersize), (buffer), (path), (name), (const struct TagItem *) _tags);})
  186. #endif
  187.  
  188. #define xadConvertNameA(charset, tags) \
  189.     LP2(0xae, STRPTR, xadConvertNameA, ULONG, charset, d0, const struct TagItem *, tags, a0, \
  190.     , XADMASTER_BASE_NAME)
  191.  
  192. #ifndef NO_INLINE_STDARG
  193. #define xadConvertName(charset, tags...) \
  194.     ({ULONG _tags[] = {tags}; xadConvertNameA((charset), (const struct TagItem *) _tags);})
  195. #endif
  196.  
  197. #endif /*  _INLINE_XADMASTER_H  */
  198.